﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data.MySqlClient;

namespace MaterialezMuñoz
{
    public partial class RegistroUsuarios : System.Web.UI.Page
    {
        clases.Usuarios U = new clases.Usuarios();
        clases.ManejoUsiarios MU = new clases.ManejoUsiarios();
        clases.MBDSQL MBD = new clases.MBDSQL();
        
        protected void Page_Load(object sender, EventArgs e)
        {
            llenarGV();
        }

        private void datos(clases.Usuarios U)
        {
            U.nombreUsu = txtNombreUsu.Text;
            U.apellidosUsu = txtApellidoUsu.Text;
            U.direccionUsu = txtDireccionUsu.Text;
            U.emailUsu = txtEmailUsu.Text;
            U.usernameUsu = txtUsuarioUsu.Text;
            U.passUsu = txtPassUsu.Text;
            U.tipoUsu = ddlTipoUsu.SelectedIndex;
            U.telUsu = int.Parse(txtTelUsu.Text);
            U.rfcUsu = txtRFCUsu.Text;
        }

        private void limpearText()
        {
            txtNombreUsu.Text = "";
            txtApellidoUsu.Text = "";
            txtDireccionUsu.Text = "";
            txtEmailUsu.Text = "";
            txtUsuarioUsu.Text = "";
            txtPassUsu.Text = "";
            ddlTipoUsu.ClearSelection();
            txtTelUsu.Text = "";
            txtRFCUsu.Text = "";
        }

        private void llenarGV()
        {
            string conn = "Server=localhost;UId=root;Password=123;database=sistemamat";
            string query = "Select * from usuarios";
            MySqlConnection con = new MySqlConnection(conn);
            MySqlDataAdapter da = new MySqlDataAdapter(query, con);
            System.Data.DataSet ds = new System.Data.DataSet();
            da.Fill(ds, "simple_data");
            gvUsuarios.DataSource = ds;
            gvUsuarios.DataBind();
        }

        protected void btnAgregarCli_Click(object sender, EventArgs e)
        {
            try
            {
                datos(U);
                if (MU.Insertar(U))
                {
                    llenarGV();
                    Label4.Text = "Los datos se han guarado exitosamente";
                }
                else
                {
                    Label4.Text = "Recuerde que el telefono son solo numeros";
                }
                limpearText();

            }
            catch
            {
                Label4.Text = "Porfavor verifique que todos los campos esten llenos.";
            }
        }

        protected void btnActualizar_Click(object sender, EventArgs e)
        {
            try
            {
                datos(U);

                if (MU.Actualizar(U))
                {
                    llenarGV();
                    Label4.Text = "Producto modificado con exíto.";
                }
                else
                {
                    Label4.Text = "Error al modificar el producto verifique bien los nuevos datos.";
                }
            }
            catch
            {
                Label4.Text = "Porfavor verifique que todos los campos esten llenos.";
            }
            limpearText();
        }

        protected void btnBuscarUsu_Click(object sender, EventArgs e)
        {
            try
            {
                if (MU.Buscar(int.Parse(txtClaveUsu.Text)))
                {
                    while (MU.Respuesta.Read())
                    {
                        txtNombreUsu.Text = MU.Respuesta["nombre"].ToString();
                        txtApellidoUsu.Text = MU.Respuesta["apellido"].ToString();
                        txtDireccionUsu.Text = MU.Respuesta["direccion"].ToString();
                        txtEmailUsu.Text = MU.Respuesta["email"].ToString();
                        txtUsuarioUsu.Text = MU.Respuesta["username"].ToString();
                        txtPassUsu.Text = MU.Respuesta["pass"].ToString();
                        ddlTipoUsu.SelectedIndex = int.Parse(MU.Respuesta["tipo_Usu"].ToString());
                        txtTelUsu.Text = MU.Respuesta["telefono"].ToString();
                        txtRFCUsu.Text = MU.Respuesta["rfc"].ToString();
                    }
                    MU.CerrarConexion();
                }
                else
                {
                    Label4.Text = "Error al cargar los datos veifique si el producto existe";
                }
            }
            catch
            {
                Label4.Text = "Escriba el id del producto para busqueda.";
            }
        }

        protected void btnEliminar_Click(object sender, EventArgs e)
        {
            try
            {
                if (MU.Borrar(int.Parse(txtClaveUsu.Text)))
                {
                    llenarGV();
                    Label4.Text = "Eliminado con Exíto";
                }
                else
                {
                    Label4.Text = "Error verifique que el producto exista.";
                }
            }
            catch
            {
                Label4.Text = "Escriba el dato por el cual desea eliminar.";
            }
            limpearText();
        }
    }
}